// MemList.h: interface for the CMemList class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MEMLIST_H__AE1F33FD_B6A1_11D8_B5C5_0000E87C7CA0__INCLUDED_)
#define AFX_MEMLIST_H__AE1F33FD_B6A1_11D8_B5C5_0000E87C7CA0__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


#define MAXLENGTH 640//640k
typedef struct {int begin,size;} JOB;
typedef struct MemBlock
{
	int begin,size;
	struct MemBlock *next;
	struct MemBlock *prior;
}MemBlock;

class CMemList  
{
	MemBlock *m_Head;
public:
	void Display2();
	int Alloc(JOB &job);
	int AllocBest(JOB &job);
	int Free(JOB &job);
	void Display();
	void Debug();
	CMemList();
	virtual ~CMemList();

};

#endif // !defined(AFX_MEMLIST_H__AE1F33FD_B6A1_11D8_B5C5_0000E87C7CA0__INCLUDED_)
